'''
Description: 文字发送器模块
Author: HowsenFisher
Date: 2021-04-01 21:37:41
LastEditTime: 2021-04-11 01:24:16
LastEditors: liutq
Reference: 
'''
import socket
from sql.DB import *
from Config import conf
import time

class WordSender:
    '''
    @description: 文字发送器类
    @param  {*}
    @return {*}
    @param {*} self
    @param {*} addr：对方的地址
    @param {*} port：文字接收端口
    '''
    def __init__(self,addr,port):
        # 创建一个TCP socket
        self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # 对方的地址
        self.addr = addr
        # 文字接收端口
        self.port = port
        # 连接对方的文字接收端口（文字发送更像是UDP，错误率极小，这里就不在try了）
        self.s.connect((addr,port))
    
    '''
    @description: 发送文字函数
    @param  {*}
    @return {*}
    @param {*} self
    @param {*} word：要发送的文字
    '''
    def sendWord(self,word):
        # 发送文字
        self.s.send(word.encode('utf-8'))
        # 向数据库插入消息
        insertMessage(Sender=conf.ip, Receiver=self.addr,time=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())),content=word)


if __name__ == '__main__':
    myWordSender = WordSender("192.168.0.4",913)
    myWordSender.sendWord("123")